from pymilvus import connections, utility, Collection, FieldSchema, CollectionSchema, DataType

# 连接到Milvus服务器
connections.connect("default", host="localhost", port="19530")

# 检查连接是否成功
print(utility.get_server_version())

# 定义字段
fields = [
    FieldSchema(name="id", dtype=DataType.INT64, is_primary=True, auto_id=True),
    FieldSchema(name="title", dtype=DataType.VARCHAR, max_length=200),
    FieldSchema(name="embedding", dtype=DataType.FLOAT_VECTOR, dim=128)
]

# 创建集合模式
schema = CollectionSchema(fields, description="示例集合")

# 创建集合（相当于表）
collection_name = "example_collection"
collection = Collection(name=collection_name, schema=schema)

print(f"集合 '{collection_name}' 创建成功")

# 创建索引（可选）
index_params = {
    "index_type": "IVF_FLAT",
    "metric_type": "L2",
    "params": {"nlist": 128}
}

collection.create_index("embedding", index_params)
print("索引创建成功")

# 检查集合是否存在
print(utility.has_collection(collection_name))


